home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / DLISTUNR.ZIP / DIRLIST.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-04-13  |  15KB  |  493 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  TINTEGER001(32,2)
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     Integer  INTEGER007
  26.     String   STRING001
  27.     String   STRING002
  28.     String   STRING003
  29.     String   STRING004
  30.     String   TSTRING005(512)
  31.     String   TSTRING006(512)
  32.     String   STRING007
  33.     String   STRING008
  34.     String   STRING009
  35.     String   STRING010
  36.     String   TSTRING011(16)
  37.  
  38. ;------------------------------------------------------------------------------
  39.  
  40.     STRING001 = ""
  41.     INTEGER007 = 31
  42.     INTEGER003 = 0
  43.     INTEGER002 = 0
  44.     INTEGER005 = 0
  45.     TINTEGER001(0, 0) = 4
  46.     TINTEGER001(0, 1) = 6
  47.     TINTEGER001(1, 0) = 4
  48.     TINTEGER001(1, 1) = 7
  49.     TINTEGER001(2, 0) = 4
  50.     TINTEGER001(2, 1) = 8
  51.     TINTEGER001(3, 0) = 4
  52.     TINTEGER001(3, 1) = 9
  53.     TINTEGER001(4, 0) = 4
  54.     TINTEGER001(4, 1) = 10
  55.     TINTEGER001(5, 0) = 4
  56.     TINTEGER001(5, 1) = 11
  57.     TINTEGER001(6, 0) = 4
  58.     TINTEGER001(6, 1) = 12
  59.     TINTEGER001(7, 0) = 4
  60.     TINTEGER001(7, 1) = 13
  61.     TINTEGER001(8, 0) = 4
  62.     TINTEGER001(8, 1) = 14
  63.     TINTEGER001(9, 0) = 4
  64.     TINTEGER001(9, 1) = 15
  65.     TINTEGER001(10, 0) = 4
  66.     TINTEGER001(10, 1) = 16
  67.     TINTEGER001(11, 0) = 4
  68.     TINTEGER001(11, 1) = 17
  69.     TINTEGER001(12, 0) = 4
  70.     TINTEGER001(12, 1) = 18
  71.     TINTEGER001(13, 0) = 4
  72.     TINTEGER001(13, 1) = 19
  73.     TINTEGER001(14, 0) = 4
  74.     TINTEGER001(14, 1) = 20
  75.     TINTEGER001(15, 0) = 4
  76.     TINTEGER001(15, 1) = 21
  77.     TINTEGER001(16, 0) = 42
  78.     TINTEGER001(16, 1) = 6
  79.     TINTEGER001(17, 0) = 42
  80.     TINTEGER001(17, 1) = 7
  81.     TINTEGER001(18, 0) = 42
  82.     TINTEGER001(18, 1) = 8
  83.     TINTEGER001(19, 0) = 42
  84.     TINTEGER001(19, 1) = 9
  85.     TINTEGER001(20, 0) = 42
  86.     TINTEGER001(20, 1) = 10
  87.     TINTEGER001(21, 0) = 42
  88.     TINTEGER001(21, 1) = 11
  89.     TINTEGER001(22, 0) = 42
  90.     TINTEGER001(22, 1) = 12
  91.     TINTEGER001(23, 0) = 42
  92.     TINTEGER001(23, 1) = 13
  93.     TINTEGER001(24, 0) = 42
  94.     TINTEGER001(24, 1) = 14
  95.     TINTEGER001(25, 0) = 42
  96.     TINTEGER001(25, 1) = 15
  97.     TINTEGER001(26, 0) = 42
  98.     TINTEGER001(26, 1) = 16
  99.     TINTEGER001(27, 0) = 42
  100.     TINTEGER001(27, 1) = 17
  101.     TINTEGER001(28, 0) = 42
  102.     TINTEGER001(28, 1) = 18
  103.     TINTEGER001(29, 0) = 42
  104.     TINTEGER001(29, 1) = 19
  105.     TINTEGER001(30, 0) = 42
  106.     TINTEGER001(30, 1) = 20
  107.     TINTEGER001(31, 0) = 42
  108.     TINTEGER001(31, 1) = 21
  109.     TSTRING011(0) = "0"
  110.     TSTRING011(1) = "1"
  111.     TSTRING011(2) = "2"
  112.     TSTRING011(3) = "3"
  113.     TSTRING011(4) = "4"
  114.     TSTRING011(5) = "5"
  115.     TSTRING011(6) = "6"
  116.     TSTRING011(7) = "7"
  117.     TSTRING011(8) = "8"
  118.     TSTRING011(9) = "9"
  119.     TSTRING011(10) = "A"
  120.     TSTRING011(11) = "B"
  121.     TSTRING011(12) = "C"
  122.     TSTRING011(13) = "D"
  123.     TSTRING011(14) = "E"
  124.     TSTRING011(15) = "F"
  125.     Log "DIRLIST PPE: entered", 0
  126.     If (TokCount() == 0) Then
  127.         Print "DIRLIST: .CFG path not specified, exiting..."
  128.         Log "DIRLIST: .CFG path not specified, exiting...", 0
  129.         Goto LABEL006
  130.     Endif
  131.     STRING002 = GetToken()
  132.     FOpen 1, PPEPath() + STRING002, 0, 0
  133.     If (Ferr(1)) Then
  134.         Print "DIRLIST: could not open " + STRING002 + ", exiting..."
  135.         Log "DIRLIST: could not open " + STRING002 + ", exiting...", 0
  136.         Goto LABEL006
  137.     Endif
  138.     FGet 1, STRING004
  139.     FGet 1, STRING007
  140.     FGet 1, STRING008
  141.     FGet 1, STRING009
  142.     FGet 1, STRING010
  143.     If (Ferr(1)) Then
  144.         Print "DIRLIST: error reading " + STRING002 + ", exiting..."
  145.         Log "DIRLIST: error reading " + STRING002 + ", exiting...", 0
  146.         Goto LABEL006
  147.     Endif
  148.     FClose 1
  149.     STRING008 = Upper(STRING008)
  150.     STRING009 = Upper(STRING009)
  151.     STRING010 = Upper(STRING010)
  152.     If (STRING008 == "RANDOM") STRING008 = TSTRING011(Random(15))
  153.     If (STRING009 == "RANDOM") Then
  154.         INTEGER004 = Random(7)
  155.         STRING009 = TSTRING011(INTEGER004)
  156.         STRING010 = TSTRING011(INTEGER004 + 8)
  157.     Endif
  158.     FOpen 1, STRING004, 0, 0
  159.     If (Ferr(1)) Then
  160.         Print "DIRLIST: could not open " + STRING004 + ", exiting..."
  161.         Log "DIRLIST: could not open " + STRING004 + ", exiting...", 0
  162.         Goto LABEL006
  163.     Endif
  164.     INTEGER004 = 0
  165.     FRead 1, TSTRING006(INTEGER004), 30
  166.     FRead 1, STRING002, 30
  167.     FRead 1, TSTRING005(INTEGER004), 35
  168.     FRead 1, STRING002, 1
  169.     :LABEL001
  170.     If (Ferr(1)) Goto LABEL002
  171.     Inc INTEGER004
  172.     FRead 1, TSTRING006(INTEGER004), 30
  173.     FRead 1, STRING002, 30
  174.     FRead 1, TSTRING005(INTEGER004), 35
  175.     FRead 1, STRING002, 1
  176.     Goto LABEL001
  177.     :LABEL002
  178.     INTEGER006 = INTEGER004
  179.     If (Ferr(1)) Then
  180.         Print "DIRLIST: error reading " + STRING004 + ", exiting..."
  181.         Log "DIRLIST: error reading " + STRING004 + ", exiting...", 0
  182.         Goto LABEL006
  183.     Endif
  184.     FClose 1
  185.     STRING002 = LastAns()
  186.     Tokenize STRING002
  187.     If (TokCount() <= 1) Goto LABEL003
  188.     STRING002 = GetToken()
  189.     While ((TokCount() > 0)) STRING003 = STRING003 + GetToken() + " "
  190.     Gosub LABEL010
  191.     :LABEL003
  192.     DefColor
  193.     Gosub LABEL014
  194.     Gosub LABEL013
  195.     Gosub LABEL007
  196.     While (INTEGER003 <> 1) Do
  197.         STRING002 = ""
  198.         STRING002 = Inkey()
  199.         STRING002 = Upper(STRING002)
  200.         If ((Left(STRING002, 4) == "DOWN") || (STRING002 == "2")) Then
  201.             Gosub LABEL008
  202.             Inc INTEGER002
  203.             If (INTEGER002 > INTEGER007) INTEGER002 = 0
  204.             Gosub LABEL007
  205.             Continue
  206.         Endif
  207.         If ((Left(STRING002, 2) == "UP") || (STRING002 == "8")) Then
  208.             Gosub LABEL008
  209.             Dec INTEGER002
  210.             If (INTEGER002 < 0) INTEGER002 = INTEGER007
  211.             Gosub LABEL007
  212.             Continue
  213.         Endif
  214.         If ((Left(STRING002, 5) == "RIGHT") || (STRING002 == "6")) Then
  215.             Gosub LABEL008
  216.             If (INTEGER002 + 16 > INTEGER007) Then
  217.                 INTEGER002 = INTEGER002 + 16 - INTEGER007 - 1
  218.                 Goto LABEL004
  219.             Endif
  220.             INTEGER002 = INTEGER002 + 16
  221.             :LABEL004
  222.             Gosub LABEL007
  223.             Continue
  224.         Endif
  225.         If ((Left(STRING002, 4) == "LEFT") || (STRING002 == "4")) Then
  226.             Gosub LABEL008
  227.             If (INTEGER002 - 16 < 0) Then
  228.                 INTEGER002 = INTEGER007 + INTEGER002 - 16 + 1
  229.                 Goto LABEL005
  230.             Endif
  231.             INTEGER002 = INTEGER002 - 16
  232.             :LABEL005
  233.             Gosub LABEL007
  234.             Continue
  235.         Endif
  236.         If (STRING002 == Chr(13)) Then
  237.             DefColor
  238.             Gosub LABEL009
  239.             Goto LABEL003
  240.             Continue
  241.         Endif
  242.         If (STRING002 == "D") Then
  243.             DefColor
  244.             Gosub LABEL011
  245.             Goto LABEL003
  246.             Continue
  247.         Endif
  248.         If (STRING002 == "Q") Then
  249.             INTEGER003 = 1
  250.             Continue
  251.         Endif
  252.         If (STRING002 == "H") Then
  253.             DefColor
  254.             Gosub LABEL015
  255.             Goto LABEL003
  256.             Continue
  257.         Endif
  258.         If ((STRING002 == "+") || (Left(STRING002, 4) == "PGDN")) Then
  259.             DefColor
  260.             Inc INTEGER005
  261.             If (INTEGER005 > 15) INTEGER005 = 15
  262.             Goto LABEL003
  263.             Continue
  264.         Endif
  265.         If ((STRING002 == "-") || (Left(STRING002, 4) == "PGUP")) Then
  266.             DefColor
  267.             Dec INTEGER005
  268.             If (INTEGER005 < 0) INTEGER005 = 0
  269.             Goto LABEL003
  270.             Continue
  271.         Endif
  272.         If ((Left(STRING002, 4) == "HOME") || (STRING002 == Chr(23))) Then
  273.             DefColor
  274.             INTEGER005 = 0
  275.             INTEGER002 = 0
  276.             Goto LABEL003
  277.             Continue
  278.         Endif
  279.         If ((Left(STRING002, 3) == "END") || (STRING002 == Chr(16))) Then
  280.             DefColor
  281.             INTEGER005 = INTEGER006 / INTEGER007 + 1
  282.             INTEGER002 = 0
  283.             Goto LABEL003
  284.             Continue
  285.         Endif
  286.         If (STRING002 == "U") Then
  287.             DefColor
  288.             Gosub LABEL012
  289.             Goto LABEL003
  290.         Endif
  291.     EndWhile
  292.     :LABEL006
  293.     DefColor
  294.     Print "@CLS@"
  295.     Log "DIRLIST PPE: exited", 0
  296.     End
  297.     :LABEL007
  298.     STRING002 = ScrText(TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1), 35, 0)
  299.     AnsiPos TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1)
  300.     Print "@X" + STRING009 + "0"
  301.     STRING002 = RTrim(STRING002, " ")
  302.     If (STRING002 == "") Then
  303.         Print "New File Uploads"
  304.     Else
  305.         Print STRING002
  306.     Endif
  307.     AnsiPos TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1)
  308.     Return
  309.     :LABEL008
  310.     STRING002 = ScrText(TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1), 35, 0)
  311.     AnsiPos TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1)
  312.     Print "@X" + STRING009 + STRING010
  313.     STRING002 = RTrim(STRING002, " ")
  314.     If (STRING002 == "New File Uploads") Then
  315.         Print "                                "
  316.     Else
  317.         Print STRING002
  318.     Endif
  319.     Return
  320.     :LABEL009
  321.     STRING002 = ScrText(TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1), 16, 0)
  322.     If (RTrim(STRING002, " ") == "New File Uploads") Then
  323.         Print "@CLS@@PON@"
  324.         Dir "U"
  325.     Else
  326.         Print "@CLS@@PON@"
  327.         Dir I2S(INTEGER002 + 1 + INTEGER005 * (INTEGER007 + 1), 10)
  328.     Endif
  329.     Return
  330.     :LABEL010
  331.     Print "@CLS@@PON@"
  332.     Dir STRING003
  333.     Return
  334.     :LABEL011
  335.     STRING002 = ScrText(TINTEGER001(INTEGER002, 0), TINTEGER001(INTEGER002, 1), 16, 0)
  336.     If (RTrim(STRING002, " ") == "New File Uploads") Then
  337.         Print "@CLS@"
  338.         Download STRING007
  339.     ElseIf (TSTRING006(INTEGER002) <> "") Then
  340.         Print "@CLS@"
  341.         Download TSTRING006(INTEGER002 + INTEGER005 * (INTEGER007 + 1))
  342.         Print "@WAIT@"
  343.     Endif
  344.     Return
  345.     :LABEL012
  346.     Print "@CLS@@PON@"
  347.     Dir "U"
  348.     Return
  349.     :LABEL013
  350.     Print "@X" + STRING009 + STRING010
  351.     For INTEGER004 = 0 To INTEGER007
  352.         AnsiPos TINTEGER001(INTEGER004, 0), TINTEGER001(INTEGER004, 1)
  353.         If (TSTRING005(INTEGER004 + INTEGER005 * (INTEGER007 + 1)) == "") Then
  354.             Print "                                   "
  355.             Continue
  356.         Endif
  357.         Print I2S(INTEGER004 + 1 + INTEGER005 * (INTEGER007 + 1), 10) + " " + Mid(TSTRING005(INTEGER004 + INTEGER005 * (INTEGER007 + 1)), 1, Len(TSTRING005(INTEGER004 + INTEGER005 * (INTEGER007 + 1))) - 4)
  358.     Next
  359.     Return
  360.     :LABEL014
  361.     PrintLn "@POFF@@CLS@@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "┌───────────────────────────────────────────────────────────────────────────@X" + STRING009 + "0┐@X08▌"
  362.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + STRING008 + "DIRLIST.PPE ■ COPYRIGHT 1994 ROBERT BROWER ■ TOTAL ACCESS (905)568-5294  @X" + STRING009 + "0│@X08▌"
  363.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "└@X" + STRING009 + "0───────────────────────────────────────────────────────────────────────────┘@X08▌"
  364.     Print "@X0" + STRING010 + "▐@X" + STRING009 + "0 @X" + STRING009 + STRING010 + "(@X" + STRING009 + STRING008 + "@X" + STRING009 + STRING010 + ")UP/DOWN (@X" + STRING009 + STRING008 + "@X" + STRING009 + STRING010 + ")LEFT/RIGHT (@X" + STRING009 + STRING008 + "D@X" + STRING009 + STRING010 + ")LOAD (@X" + STRING009 + STRING008 + "H@X" + STRING009 + STRING010 + ")ELP (@X" + STRING009 + STRING008 + "+@X" + STRING009 + STRING010 + "/@X" + STRING009 + STRING008 + "-@X" + STRING009 + STRING010 + ")NEXT/PREV. PAGE "
  365.     PrintLn "(@X" + STRING009 + STRING008 + "Q@X" + STRING009 + STRING010 + ")UIT (@X" + STRING009 + STRING008 + "ENTER@X" + STRING009 + STRING010 + ") @X08▌"
  366.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " ┌───────────────────────────────────@X" + STRING009 + "0┐ @X" + STRING009 + STRING010 + "┌───────────────────────────────────@X" + STRING009 + "0┐ @X08▌"
  367.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  368.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  369.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  370.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  371.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  372.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  373.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  374.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  375.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  376.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  377.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  378.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  379.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  380.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  381.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  382.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " │                                   @X" + STRING009 + "0│ @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│ @X08▌"
  383.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + " └@X" + STRING009 + "0───────────────────────────────────┘ @X" + STRING009 + STRING010 + "└@X" + STRING009 + "0───────────────────────────────────┘ @X08▌"
  384.     Return
  385.     :LABEL015
  386.     PrintLn "@CLS@@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "┌───────────────────────────────────────────────────────────────────────────@X" + STRING009 + "0┐@X08▌"
  387.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + STRING008 + "DIRLIST.PPE ■ COPYRIGHT 1994 ROBERT BROWER ■ TOTAL ACCESS (905)568-5294  @X" + STRING009 + "0│@X08▌"
  388.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "└@X" + STRING009 + "0───────────────────────────────────────────────────────────────────────────┘@X08▌"
  389.     If (STRING001 <> "") Then
  390.         STRING002 = "REGISTERED TO: " + STRING001
  391.         Forward (80 - Len(STRING002)) / 2
  392.         PrintLn "@X0" + STRING008 + STRING002
  393.     Else
  394.         PrintLn "@X8E                         UNREGISTERED EVALUATION COPY"
  395.     Endif
  396.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "┌───────────────────────────────────────────────────────────────────────────@X" + STRING009 + "0┐@X08▌"
  397.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│     @X" + STRING009 + STRING008 + "KEY        FUNCTION DESCRIPTION                                       @X" + STRING009 + "0│@X08▌"
  398.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0┌───────@X" + STRING009 + STRING010 + "┐ @X" + STRING009 + "0┌──────────────────────────@X" + STRING009 + STRING010 + "┐                                   @X" + STRING009 + "0│@X08▌"
  399.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + "D @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Download Directory Text  @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│@X08▌"
  400.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│   @X" + STRING009 + STRING008 + "END @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Goto Last Page           @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│@X08▌"
  401.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "ENTER @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Select Directory         @X" + STRING009 + STRING010 + "│        @X" + STRING009 + STRING008 + "CURSOR or NUMERICAL        @X" + STRING009 + "0│@X08▌"
  402.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + "H @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Help Screen              @X" + STRING009 + STRING010 + "│          @X" + STRING009 + STRING008 + "DIRECTION KEYS:          @X" + STRING009 + "0│@X08▌"
  403.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│  @X" + STRING009 + STRING008 + "HOME @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Goto First Page          @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0┌─────────@X" + STRING009 + STRING010 + "┐            @X" + STRING009 + "0│@X08▌"
  404.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + "Q @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Quit                     @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│    @X" + STRING009 + STRING008 + "8    @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│@X08▌"
  405.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + "U @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "View Upload Directory    @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│    @X" + STRING009 + STRING008 + "    @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│@X08▌"
  406.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│@X" + STRING009 + STRING008 + "PGUP/+ @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Next Page                @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│  @X" + STRING009 + STRING008 + "4  6  @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│@X08▌"
  407.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│@X" + STRING009 + STRING008 + "PGDN/- @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Previous Page            @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│    @X" + STRING009 + STRING008 + "    @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│@X08▌"
  408.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + " @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Move Up One Selection    @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│    @X" + STRING009 + STRING008 + "2    @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0│@X08▌"
  409.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + " @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Move Down One Selection  @X" + STRING009 + STRING010 + "│            @X" + STRING009 + "0└@X" + STRING009 + STRING010 + "─────────┘            @X" + STRING009 + "0│@X08▌"
  410.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + " @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Move Left One Selection  @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│@X08▌"
  411.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0│     @X" + STRING009 + STRING008 + " @X" + STRING009 + STRING010 + "│ @X" + STRING009 + "0│ @X" + STRING009 + STRING008 + "Move Right One Selection @X" + STRING009 + STRING010 + "│                                   @X" + STRING009 + "0│@X08▌"
  412.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "│  @X" + STRING009 + "0└@X" + STRING009 + STRING010 + "───────┘ @X" + STRING009 + "0└@X" + STRING009 + STRING010 + "──────────────────────────┘                                   @X" + STRING009 + "0│@X08▌"
  413.     PrintLn "@X0" + STRING010 + "▐@X" + STRING009 + STRING010 + "└@X" + STRING009 + "0───────────────────────────────────────────────────────────────────────────┘@X08▌"
  414.     Print "@WAIT@"
  415.     Return
  416.  
  417. ;------------------------------------------------------------------------------
  418. ;
  419. ; Usage report (before postprocessing)
  420. ;
  421. ; ■ Statements used :
  422. ;
  423. ;    1       End
  424. ;    69      Goto 
  425. ;    123     Let 
  426. ;    24      Print 
  427. ;    45      PrintLn 
  428. ;    38      If 
  429. ;    2       FOpen 
  430. ;    2       FClose 
  431. ;    5       FGet 
  432. ;    10      DefColor
  433. ;    7       Log 
  434. ;    16      Gosub 
  435. ;    9       Return
  436. ;    3       Inc 
  437. ;    2       Dec 
  438. ;    1       Tokenize 
  439. ;    4       Dir 
  440. ;    4       AnsiPos 
  441. ;    1       Forward 
  442. ;    8       FRead 
  443. ;    2       Download 
  444. ;
  445. ;
  446. ; ■ Functions used :
  447. ;
  448. ;    6       *
  449. ;    2       /
  450. ;    784     +
  451. ;    7       -
  452. ;    29      ==
  453. ;    3       <>
  454. ;    4       <
  455. ;    2       <=
  456. ;    4       >
  457. ;    2       >=
  458. ;    31      !
  459. ;    2       &&
  460. ;    9       ||
  461. ;    2       Len(
  462. ;    4       Upper()
  463. ;    1       Mid()
  464. ;    8       Left()
  465. ;    5       Ferr()
  466. ;    3       Chr()
  467. ;    4       RTrim()
  468. ;    2       Random()
  469. ;    1       Inkey()
  470. ;    1       PPEPath()
  471. ;    3       GetToken()
  472. ;    2       I2S()
  473. ;    3       TokCount()
  474. ;    4       ScrText()
  475. ;    1       LastAns()
  476. ;
  477. ;------------------------------------------------------------------------------
  478. ;
  479. ; Analysis flags : No flag
  480. ;
  481. ;------------------------------------------------------------------------------
  482. ;
  483. ; Postprocessing report
  484. ;
  485. ;    1       For/Next
  486. ;    1       While/EndWhile
  487. ;    28      If/Then or If/Then/Else
  488. ;    0       Select Case
  489. ;
  490. ;------------------------------------------------------------------------------
  491. ;                 AEGiS Corp - Break the routines, code against the machines!
  492. ;------------------------------------------------------------------------------
  493.